1.3 Estructura de un Programa
A diferencia de otros lenguajes como Java o C, en Python no es obligatorio encerrar el código en clases o funciones. Un programa puede ser simplemente un archivo con instrucciones escritas una detrás de otra. Sin embargo, para que el código sea más claro, legible y reutilizable, se recomienda seguir una estructura básica que suele incluir los siguientes elementos:
No te preocupes si no entiendes el código de esta sección, no hay problema. El objetivo aquí es que te familiarices con la estructura general de un programa en python. Ya tendremos tiempo de ir avanzando en la compresión de los diferentes bloques a lo largo del curso.
1️⃣ Ejemplo de programa completo en Python
# 1. Importación de librerías
import math
# 2. Constantes
PI = 3.1416
# 3. Definición de funciones
def calcular_area_circulo(radio):
"""Devuelve el área de un círculo dado su radio"""
return PI * (radio ** 2)
# 4. Definición de clases
class Circulo:
def __init__(self, radio):
self.radio = radio
def area(self):
return calcular_area_circulo(self.radio)
# 5. Función principal
def main():
r = float(input("Escribe el radio del círculo: "))
circulo = Circulo(r)
print("El área del círculo es:", circulo.area())
# 6. Punto de entrada
if __name__ == "__main__":
main()
2️⃣ Partes del programa
🟩 Importación de librerías
Si el programa necesita módulos de la librería estándar o paquetes externos, deben importarse al inicio del archivo.
import math
import sys
from datetime import datetime
🟦 Definición de variables globales
Las constantes suelen escribirse en mayúsculas y colocarse al inicio del programa.
PI = 3.1416
MAX_INTENTOS = 3
🟨 Definición de funciones
Las funciones permiten dividir el programa en bloques de código reutilizables.
def saludar(nombre):
"""Muestra un saludo personalizado"""
print(f"Hola, {nombre}!")
🟧 Definición de clases (si se usa POO)
En programas más complejos se utilizan clases para representar objetos y organizar mejor el código.
class Persona:
def __init__(self, nombre, edad):
self.nombre = nombre
self.edad = edad
def presentarse(self):
print(f"Me llamo {self.nombre} y tengo {self.edad} años")
🟥 Función principal
Es una buena práctica definir una función main() que contenga la lógica principal del programa.
def main():
nombre = input("Escribe tu nombre: ")
saludar(nombre)
🟪 Punto de entrada del programa
La instrucción if __name__ == "__main__": se utiliza para indicar el inicio del programa. Esto permite que el archivo pueda ejecutarse directamente o importarse como módulo en otro programa sin que se ejecute todo el código automáticamente.
if __name__ == "__main__":
main()